package androidex;

/**
 * Created by Android Studio_WLP.
 * Date: 2020/5/9
 * Time: 14:31
 */
public interface RFIDInterface {
    void HSURM_GET_INFO(CallbackListener callbackListener);

    void HSURM_REBOOT(CallbackListener callbackListener);

    void HSURM_SAVE_SETTING(CallbackListener callbackListener);//保存设置

    void HSURM_RESTORE_SETTING(CallbackListener callbackListener);//回复设置

    //（盘点占空比设置）
    void HSURM_SET_DUTY_CYCLE(int Inv_num, int Inv_time, CallbackListener callbackListener);

    void HSURM_GET_DUTY_CYCLE(CallbackListener callbackListener);//（盘点占空比读取）

    void HSURM_Set_RF_Prm(int Proto, int Rf_item, CallbackListener callbackListener);

    void HSURM_Get_RF_Prm(int Proto, CallbackListener callbackListener);

    void SET_PROTO_MASK(int Option, int Proto_MAsk, CallbackListener callbackListener); //设置协议掩码

    void GET_PROTO_MASK(CallbackListener callbackListener);

    void SET_ANTENNA(int Antenna, CallbackListener callbackListener);         //设置天线使能

    void GET_ANTENNA(CallbackListener callbackListener);

    void HSURM_INVENTORYISO_CONTINUE_TIME(int InvParam, int InvType, RFID_Callbacklistener rfid_callbacklistener);

    void HSURM_INVENTORYISO_CONTINUE_customize(int InvType, int huihua, int AB, int Sel, RFID_Callbacklistener rfid_callbacklistener);

    void HSURM_STOP_INVENTORY();  //停止盘点

    void HSURM_SELECTMASK_CANCLE(CallbackListener callbackListener);

    void HSURM_STOP_READ_TAG();//停止读标签

    void HSURM_Set_ANT_PWR(int power, CallbackListener callbackListener);  // 仅支持单天线 ！ 设置天线功率

    void HSURM_Get_ANT_PWR(CallbackListener callbackListener);   //获取天线功率

    void HSURM_Multi_Set_Fre(int Proto, int REGION, String Frei, int StepFre, int CN, CallbackListener callbackListener);   //设置工作频率

    void HSURM_Multi_Get_Fre(int Proto, CallbackListener callbackListener);  //获取工作频率

    void HSURM_SELECTMASK(String UII, CallbackListener callbackListener);//选择标签

    void HSURM_READ_TAG(int pro_mask,int Param, int Option, String AccPwd, int MemBank, int WordPtr, int WordCount, Read_Callbacklistener read_Callback);

    void HSURM_WRITEISO_TAG(int Option, String AccPwd, int MemBank, int WordPtr, int WordCount, String Data, CallbackListener callbackListener);

    void HSURM_LOCKISO_TAG(String AccPwd, int Area, int Action, CallbackListener callbacklistener);

    void HSURM_KILLISO_TAG(String killpassword, CallbackListener callbacklistener);

    void HSURM_TEMPERATURE_SET(int tem, CallbackListener callbackListener); //设置温度

    void HSURM_TEMPERATURE_GET(CallbackListener callbackListener); //获取温度

    void HSURM_READ_LOG(CallbackListener callbackListener);   //日志

    void HSURM_READ_ISO_GJB_TAG(int pro_mask, int Param,
                                int OptionR1, String AccPwdR1, int MemBankR1, int WordPtrR1, int WordCountR1,
                                int OptionR2, String AccPwdR2, int MemBankR2, int WordPtrR2, int WordCountR2,
                                Read_Callbacklistener read_callbacklistener);
    /*写国标*/
    void HSURM_WRITEGB_TAG(int Option, String AccPwd, int MemBank, int WordPtr, int WordCount, String Data, CallbackListener callbackListener);
    /*擦除国标*/
    void HSURM_ERASEGB_TAG(int Option, String AccPwd, int MemBank, int WordPtr, int WordCount,CallbackListener callbackListener);
   /*锁定国标*/
    void HSURM_LOCKGB_TAG(String AccPwd, int MemBank, int Cfg, int Action, CallbackListener callbacklistener);
   /*灭活国标**/
    void HSURM_KILLGB_TAG(String killpassword, CallbackListener callbacklistener);

    void  HSURM_STOP_GJB();

    void HSURM_STOP_READ_GJB();

    void HSURM_SELECTMASK_CANCLE_GJB(CallbackListener callbackListener);

    void HSURM_SELECTMASK_GJB(String UII, CallbackListener callbackListener);
    interface CallbackListener {
        void callback(boolean success, String msg);
    }

    interface RFID_Callbacklistener {
        void rfid_Callback(boolean success, String result);
    }

    interface Read_Callbacklistener {
        void read_Callback(String type, ReadTagData result);
    }

    interface Temp_Callbacklistener {
        void temp_Callback(boolean success, String result);
    }

    //设置Select指令参数
    void HSURM_SET_SELPRM(String protocal, String target, String truncate, String action, int memBank, String pointer, int mask,CallbackListener callbackListener);

    //获取Select指令参数
    void HSURM_GET_SELPRM(String protocal,CallbackListener callbackListener);

    //测温功能v1.0 设置标签类型
    void HSURM_MODBUS_SET_TAG_TYPE(int tagType,CallbackListener callbackListener);

    //测温功能v1.0 获取标签类型
    void HSURM_MODBUS_GET_TAG_TYPE(CallbackListener callbackListener);


    //读取国际标准协议标签数据
    void HSURM_READISO_TAG(int Option, String AccPwd, int MemBank, int WordPtr, int WordCount,Temp_Callbacklistener temp_callbacklistener);

    void HSURM_STOP_READTEMP();  //停止温度
}